package com.example.hanchen.yongkanggy.utils;

import android.util.Log;

import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;

/*MD5加密*/
public class Md5Utils {
    /*MD5 获取32位小写*/
    public static String getMD5String(String input) {
        /*API签名 随机生成的字符串（16位  字母加数字）  + key （ @8956584158_@ZLOSHENRCK_@2147854854_#END）  + 时间戳（13位）*/
        /*业务签名 1. 有参的时候（字典升序+key） 无参的时候 直接用key   2.如果是body请求的时候 不需要传参 直接使用key    From表单和get请求的时候 有参需要使用参数加key */
        Log.i("JFOEJIFJIEF","  "+input);

        try {
            // Create MD5 Hash
            MessageDigest digest = MessageDigest.getInstance("MD5");
            digest.update(input.getBytes());
            byte messageDigest[] = digest.digest();

            // Create Hex String
            StringBuilder hexString = new StringBuilder();
            for (byte aMessageDigest : messageDigest) {
                String h = Integer.toHexString(0xFF & aMessageDigest);
                while (h.length() < 2) h = "0" + h;
                hexString.append(h);
            }
            return hexString.toString().toLowerCase(); // Convert to lowercase
        } catch (NoSuchAlgorithmException e) {
            e.printStackTrace();
        }
        return "";
    }
}
